init.push(grid_lista);
var nome_grid = "js_grid_grupo";

function grid_lista(){
	
	$('#'+nome_grid).gridcrud({

		jqgrid: {
			url: reverse('grupo.listar.grid'),
			height: '100%',
			hidegrid: false,
			datatype: "json",
			jsonReader: {root:"rows", page:"page", total:"total", records:"records"},
			colNames:['Nome', 'Quem criou?', ''],
			colModel:[
				{name:'nome', index:'nome', width:200, align:"left", classes: 'extra-padding-left'},
				{name:'user_responsavel', index:'user_responsavel', width:100, align:"left", resizable:false, classes:'extra-padding-left'},
				{name:'buttons', sortable: false, width: 68, classes:'buttons'}
			],
			sortname: 'nome',
			viewrecords: true,
			caption: 'Lista de Grupos',
			pager:"#grupo_paginacao",
			rowList:[20,50,100]
		},
		
		add: {
			type: 'modal',
			url: reverse('grupo.novo'),
			post: reverse('grupo.novo.salvar'),
			title: 'Adicionar Novo Grupo',
			width: 550,
			height: 400,
			element: $("#js_dialog"),
			events: {
				after_open: function(){
					return inicializa_busca_permissoes("#id_permissoes");
				},	
			},
			messages: {
				cancel: 'Ação cancelada.',
				success: 'Grupo adicionado com sucesso.',
				error: 'Erro',  //não tem msg de erro padrão porque o lado servidor manda a msg certa!
			},
			message_show_with_list: false,
			btn_salvar_e_add_novo: true,

		},
		edit: {
			type: 'modal',
			url: function(rowid){ return reverse('grupo.editar', {'id': rowid}); },
			post: function(rowid){ return reverse('grupo.editar.salvar', {'id': rowid}); },
			title: 'Editar Grupo',
			title_button: 'Editar',
			width: 550,
			height: 400,
			element: $("#js_dialog"),
			messages: {
				cancel: 'Edição cancelada.',
				success: 'Grupo salvo com sucesso.',
				error: 'Erro',  //não tem msg de erro padrão porque o lado servidor manda a msg certa!
			},
			events: {
				after_open: function(){
					return inicializa_busca_permissoes("#id_permissoes");
				},	
			},
			message_show_with_list: false
		},
		del: {
			post: function(rowid) { return reverse('grupo.remover', {'id': rowid}); },
			title: 'Excluir Grupo - Confirmação',
			messages: {
				text: 'Deseja mesmo excluir esse grupo?',
				cancel: 'Ação cancelada.',
				success: 'Grupo excluído com sucesso.',
				error: 'Erro',  //não tem msg de erro padrão porque o lado servidor manda a msg certa!
			},
		}
	});
	
	$("#js_add_grupo").click(function() {
        $('#'+nome_grid).gridcrud("add");
    });

}

